//==========================================================================
// Copyright (c) 2000-2008,  Elastos, Inc.  All Rights Reserved.
//==========================================================================

#ifndef __ELASTOS_SYSNUM_H__
#define __ELASTOS_SYSNUM_H__

typedef enum CallNo {
    CallNo_SysRegister                    = 0x00,
    CallNo_SysUnregister                  = 0x01,
    CallNo_SysInvoke                      = 0x02,
    CallNo_SysReply                       = 0x03,
    CallNo_SysPrint                       = 0x04,
    CallNo_SysRegisterCommon              = 0x05,
    CallNo_SysResolveCommon               = 0x06,
    CallNo_SysUnregisterCommon            = 0x07,
    CallNo_SysBreak                       = 0x08,
    CallNo_SysRegisterClassInfo           = 0x09,
    CallNo_SysGetClassInfo                = 0x0a,
    CallNo_SysExitThread                  = 0x0b, // if need change, modify userentry.cpp
    CallNo_SysRegisterService             = 0x0c,
    CallNo_SysWaitService                 = 0x0d,
    CallNo_SysAttachServer                = 0x0e,
    CallNo_SysDetachServer                = 0x0f,
    CallNo_SysCreateEvent                 = 0x10,
    CallNo_SysDestroyEvent                = 0x11,
    CallNo_SysNotifyEvent                 = 0x12,
    CallNo_SysWaitEvent                   = 0x13,
    CallNo_SysSetBreakPoint               = 0x14,
    CallNo_SysGetVirtualCode              = 0x15,
    CallNo_SysReboot                      = 0x16,
    CallNo_SysGetMemtraceArgs             = 0x17,
    CallNo_SysSleep                       = 0x18,
    CallNo_SysQueryPerformanceCounter     = 0x19,
    CallNo_SysSendToKernel                = 0x1a,
    CallNo_SysGetThreadStackTop           = 0x1b,
    c_uNumOfSystemCall,
} CallNo;

#ifdef _mips
EXTERN_C uint32_t g_uNumberOfSysCall;
#endif

#endif // __ELASTOS_SYSNUM_H__
